import Router from 'vue-router'
import routes from './routes'

export default () => {
  // 每次都new一个
  return new Router({
    routes,
    // mode: 'history',
    // 默认跳转路由的基础路径 下面的请求地址默认会加上 /base/
    // 比如：http://localhost:8000/base/app/hello
    // base: '/base/',

    linkActiveClass: 'active-link',
    linkExactActiveClass: 'exact-active-link',

    // to 去的路由，路由对象
    // from 从哪个路由跳转，路由对象
    // savedPosition 如果之前有登录过，他会自动保留滚动条位置
    // 滚动条操作
    scrollBehavior (to, from, savedPosition) {
      //如果出现过滚动行为，下次进入页面 还在那里
      if (savedPosition) {
        return savedPosition
      } else {
        //如果没有访问过 ，在(0,0)坐标 === 左上角
        return {x:0, y:0}
      }
    },
    // parseQuery (query) {
    //   // 把 url 中 get 路径后面的字符串，
    //   // 查询条件  query 是个字符串
    // },

    // stringifyQuery (obj) {
    //   //查询条件是个object
    // }

    // 浏览器不支持的情况，vue 可以用hash的形式
    // false 是多页应用
    // true 单页应用
    fallback: true
  })
}

// 不推荐下面做法，因为这样会导致全局只有一个 router
// const router = new Router({
//   routes
// })
// export default router
